#pragma once

#include "backtest/data_loader.h"
#include <string>
#include <vector>

class CsvDataLoader : public DataLoader {
public:
    CsvDataLoader() = default;
    
    // 设置数据文件路径
    void set_data_path(const std::string& path) {
        data_path_ = path;
    }
    
    // 从CSV文件加载市场数据
    std::vector<MarketData> load_data(const std::string& symbol,
                                    const std::string& start_time,
                                    const std::string& end_time) override;

private:
    std::string data_path_;
    
    // 检查时间戳是否在指定范围内
    bool is_timestamp_in_range(const std::string& timestamp,
                             const std::string& start_time,
                             const std::string& end_time);
};